package main

import (
	"strings"

	"github.com/lxn/walk"
	. "github.com/lxn/walk/declarative"
)

func main() {
	var inTE, outTE *walk.TextEdit

	MainWindow{
		Title:   "SCREAMO",
		MinSize: Size{600, 400},
		Layout:  VBox{},
		Children: []Widget{
			HSplitter{
				Children: []Widget{
					TextEdit{AssignTo: &inTE},
					TextEdit{AssignTo: &outTE, ReadOnly: true},
				},
			},
			PushButton{
				Text: "SCREAM",
				OnClicked: func() {
					outTE.SetText(strings.ToUpper(inTE.Text()))
				},
			},
		},
	}.Run()
}

//1、go get github.com/lxn/walk
//2、go get github.com/akavel/rsrc
//3、执行rsrc -manifest main.manifest -o rsrc.syso
//		如果提示rsrc不是函数或内部命令的提示，这是因为还没有构建出rsrc.exe和把gobin的环境变量设置好
//		3.1、新增GOBIN环境变量，指向gopath的bin目录，并在path中添加上%GOBIN%
//		3.2、在rsrc的模块目录（如D:\Git\gospace\pkg\mod\github.com\akavel\rsrc@v0.10.2）下执行go install，使其在上一步的gobin目录下生成rsrc.exe程序
//4、构建exe
//		4.1、构建时使用：go build，在运行生成出来的exe程序时会有一个windows的命令行黑框
//		4.2、构建时使用：go build -ldflags="-H windowsgui"，在运行生成出来的exe程序时不会有windows的命令行黑框

//参考文档1、https://blog.csdn.net/weixin_43165220/article/details/133070116
//参考文档2、https://www.cnblogs.com/sbman/p/9366530.html
